With the advent of large-scale network connectivity, e.g., interconnection between intranets, the Internet, WANs, LANs, etc. (the term “network” will be used herein to generally reference all networks types or combinations thereof), it has become increasingly difficult to locate and track networked devices, and to identify services or capabilities that may be offered by the networked devices. To facilitate locating and tracking devices and their services, various “web service” related technologies have been implemented.
The phrase “web service” describes a standardized way of describing, discovering, and integrating network applications, services and resources from different businesses using open standards, such as World Wide Web Consortium (W3C) and Internet Engineering Task Force (IETF) standards, including XML (Extensible Markup Language), SOAP (Simple Object Access Protocol), WSDL (Web Services Description Language), UDDI, UPnP (Universal Plug and Play), etc., over a network, such as the Internet or other network.
UPnP (see www.upnp.org) is a well-known cross-platform architecture allowing discovery of networking equipment devices that have come into contact with a network. UPnP relies on device broadcasts as they enter the network to learn abilities of other UPnP devices; UPnP is not highly scalable. Devices retain their own service descriptions. Consequently UPnP based networks do not ordinarily have a central registry allowing discovering service descriptions for other devices. Such registry services are provided by the UDDI initiative.
UDDI utilizes a global set of registries (also referred to as directories or databases) to allow businesses to define their services, share information about how the business interacts with other businesses or entities, and to permit searching for other businesses, web services, or services or resources presently available on a network. (See Internet Uniform Resource Locator (URL) www.uddi.org. As of this writing, the current UDDI specification is Version 3.0, published 19 Jul. 2002.) UDDI communicates with open standards, including XML, SOAP, HTTP (HyperText Transfer Protocol) and other protocols.
While UDDI's global nature provides a centralized source for locating offered services, such registries are geared towards storing long-lived data for clients at particular network addresses. This is impractical when a particular client, such as a mobile device, which may be temporarily in contact with several different networks, each assigning the device a different network address, and may arbitrarily enter or leave a network at any time. In addition, mobile devices may spontaneously form ad-hoc networks, where it would be impractical or impossible to negotiate services with a global registry.